希望瀏覽數可以多點啦,更多人看我的教學後有所增長
ctx.author
的使用者的資訊使用者的資訊 | 用途 |
---|---|
ctx.author.id |
以整數形式傳回使用者的ID |
ctx.author.name |
以字串形式傳回使用者的顯示名稱 |
ctx.author.discriminator |
使用者名稱後面的四位數字 |
ctx.author.mention |
傳回提及使用者的字串 |
ctx.author.avatar.url |
傳回使用者頭像 |
ctx.author.top_role |
傳回使用者在伺服器中的最高身份 |
範例:
import discord
from discord.ext import commands
# intents = discord.Intents.default()
bot = discord.Bot()
@bot.event
async def on_ready():
print(f'Logged in as {bot.user.name} ({bot.user.id})')
print('Bot is ready to receive commands')
@bot.command()
async def user_info(ctx):
author_id = ctx.author.id
author_name = ctx.author.name
discriminator = ctx.author.discriminator
mention = ctx.author.mention
avatar_url = ctx.author.avatar.url
created_at = ctx.author.created_at
status = ctx.author.status
info = f"User ID: {author_id}\n" \
f"Username: {author_name}\n" \
f"Discriminator: {discriminator}\n" \
f"Mention: {mention}\n" \
f"Avatar URL: {avatar_url}\n" \
f"Account Created At: {created_at}\n" \
f"Status: {status}\n"
await ctx.send(info)
bot.run("token")
from discord import File, Embed
import discord
bot = discord.Bot()
@bot.event
async def on_ready():
print(f'Logged in as {bot.user.name} ({bot.user.id})')
print('Bot is ready to receive commands')
@bot.command()
async def send_message(ctx, arg):
await ctx.send(arg)
bot.run("token")
執行結果:
透過此程式碼,您可以使用/send_message
指令後接訊息內容將該訊息傳送到使用該命令的頻道。例如,如果您/send_message Hello, world!
在機器人所在的 Discord頻道中輸入內容,它將發送訊息Hello, world!
到那個頻道。
這次用的圖片:
範例:
from discord import File
import discord
bot = discord.Bot()
@bot.event
async def on_ready():
print(f'Logged in as {bot.user.name} ({bot.user.id})')
print('Bot is ready to receive commands')
@bot.command()
async def send_image(ctx):
channel = ctx.channel
image_path = "e.png"
with open(image_path, 'rb') as f:
image = File(f)
await channel.send(file=image)
bot.run("token")
執行結果:
discord.file()
將圖像檔案包裝在物件中discord.File()
。這會將圖像檔案準備為要傳送的附件。
要使用Pycord發送嵌入訊息,您可以利用Embed
自訂訊息的外觀和內容。
範例:
import datetime
import pytz
from discord import File, Embed
import discord
bot = discord.Bot()
@bot.event
async def on_ready():
print(f'Logged in as {bot.user.name} ({bot.user.id})')
print('Bot is ready to receive commands')
@bot.command()
async def send_embed(ctx):
embed = Embed(title="python基礎及數據科學之應用day 25", url="https://ithelp.ithome.com.tw/articles/10321600", description="嵌入訊息", color=0x001eff)
embed.set_thumbnail(url="https://www2.pyc.edu.hk/img/logo-green")
embed.set_author(name="carsonleung")
embed.add_field(name="Field1", value="value", inline=True)
embed.add_field(name="Field2", value="value2", inline=True)
#將時區設定為香港
hong_kong_timezone = pytz.timezone('Asia/Hong_Kong')
#取得香港現在時間
current_time = datetime.datetime.now(tz=hong_kong_timezone)
time = str(current_time.time())
embed.set_footer(text="時間 : "+time) #列印香港目前時間
await ctx.send(embed=embed)
bot.run("token")
執行結果:
如果我的文章對你有幫助或有更好的建議,可以追蹤我,可以按讚和不妨在留言區提出,明天再見吧。bye
reference:
https://guide.pycord.dev/getting-started/more-features